using Google.ProtocolBuffers;
using micromsg.Proto;
using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using System.IO;
using System.Runtime.CompilerServices;
namespace micromsg
{
	[GeneratedCode("ProtoGen", "2.3.0.277"), DebuggerNonUserCode, CompilerGenerated]
	public sealed class AuthResponse : GeneratedMessageLite<AuthResponse, AuthResponse.Builder>
	{
		[GeneratedCode("ProtoGen", "2.3.0.277"), DebuggerNonUserCode, CompilerGenerated]
		public sealed class Builder : GeneratedBuilderLite<AuthResponse, AuthResponse.Builder>
		{
			private bool resultIsReadOnly;
			private AuthResponse result;
			protected override AuthResponse.Builder ThisBuilder
			{
				get
				{
					return this;
				}
			}
			public override bool IsInitialized
			{
				get
				{
					return this.result.IsInitialized;
				}
			}
			protected override AuthResponse MessageBeingBuilt
			{
				get
				{
					return this.PrepareBuilder();
				}
			}
			public override AuthResponse DefaultInstanceForType
			{
				get
				{
					return AuthResponse.DefaultInstance;
				}
			}
			public BaseResponse BaseResponse
			{
				get
				{
					return this.result.BaseResponse;
				}
				set
				{
					this.SetBaseResponse(value);
				}
			}
			public uint Uin
			{
				get
				{
					return this.result.Uin;
				}
				set
				{
					this.SetUin(value);
				}
			}
			public SKBuiltinString_t UserName
			{
				get
				{
					return this.result.UserName;
				}
				set
				{
					this.SetUserName(value);
				}
			}
			public SKBuiltinString_t NickName
			{
				get
				{
					return this.result.NickName;
				}
				set
				{
					this.SetNickName(value);
				}
			}
			public uint BindUin
			{
				get
				{
					return this.result.BindUin;
				}
				set
				{
					this.SetBindUin(value);
				}
			}
			public SKBuiltinString_t BindEmail
			{
				get
				{
					return this.result.BindEmail;
				}
				set
				{
					this.SetBindEmail(value);
				}
			}
			public SKBuiltinString_t BindMobile
			{
				get
				{
					return this.result.BindMobile;
				}
				set
				{
					this.SetBindMobile(value);
				}
			}
			public uint Status
			{
				get
				{
					return this.result.Status;
				}
				set
				{
					this.SetStatus(value);
				}
			}
			public ByteString SessionKey
			{
				get
				{
					return this.result.SessionKey;
				}
				set
				{
					this.SetSessionKey(value);
				}
			}
			public SKBuiltinString_t ImgSid
			{
				get
				{
					return this.result.ImgSid;
				}
				set
				{
					this.SetImgSid(value);
				}
			}
			public SKBuiltinBuffer_t ImgBuf
			{
				get
				{
					return this.result.ImgBuf;
				}
				set
				{
					this.SetImgBuf(value);
				}
			}
			public SKBuiltinString_t OfficialUserName
			{
				get
				{
					return this.result.OfficialUserName;
				}
				set
				{
					this.SetOfficialUserName(value);
				}
			}
			public SKBuiltinString_t OfficialNickName
			{
				get
				{
					return this.result.OfficialNickName;
				}
				set
				{
					this.SetOfficialNickName(value);
				}
			}
			public SKBuiltinString_t QQMicroBlogUserName
			{
				get
				{
					return this.result.QQMicroBlogUserName;
				}
				set
				{
					this.SetQQMicroBlogUserName(value);
				}
			}
			public uint QQMicroBlogStatus
			{
				get
				{
					return this.result.QQMicroBlogStatus;
				}
				set
				{
					this.SetQQMicroBlogStatus(value);
				}
			}
			public uint NewVersion
			{
				get
				{
					return this.result.NewVersion;
				}
				set
				{
					this.SetNewVersion(value);
				}
			}
			public string Ticket
			{
				get
				{
					return this.result.Ticket;
				}
				set
				{
					this.SetTicket(value);
				}
			}
			public uint PushMailStatus
			{
				get
				{
					return this.result.PushMailStatus;
				}
				set
				{
					this.SetPushMailStatus(value);
				}
			}
			public uint SendCardBitFlag
			{
				get
				{
					return this.result.SendCardBitFlag;
				}
				set
				{
					this.SetSendCardBitFlag(value);
				}
			}
			public string PushMailSettingTicket
			{
				get
				{
					return this.result.PushMailSettingTicket;
				}
				set
				{
					this.SetPushMailSettingTicket(value);
				}
			}
			public BuiltinIPList BuiltinIPList
			{
				get
				{
					return this.result.BuiltinIPList;
				}
				set
				{
					this.SetBuiltinIPList(value);
				}
			}
			public string FSURL
			{
				get
				{
					return this.result.FSURL;
				}
				set
				{
					this.SetFSURL(value);
				}
			}
			public NetworkControl NetworkControl
			{
				get
				{
					return this.result.NetworkControl;
				}
				set
				{
					this.SetNetworkControl(value);
				}
			}
			public uint PluginFlag
			{
				get
				{
					return this.result.PluginFlag;
				}
				set
				{
					this.SetPluginFlag(value);
				}
			}
			public string Alias
			{
				get
				{
					return this.result.Alias;
				}
				set
				{
					this.SetAlias(value);
				}
			}
			public uint RegType
			{
				get
				{
					return this.result.RegType;
				}
				set
				{
					this.SetRegType(value);
				}
			}
			public string AuthKey
			{
				get
				{
					return this.result.AuthKey;
				}
				set
				{
					this.SetAuthKey(value);
				}
			}
			public string Sid
			{
				get
				{
					return this.result.Sid;
				}
				set
				{
					this.SetSid(value);
				}
			}
			public PluginKeyList PluginKeyList
			{
				get
				{
					return this.result.PluginKeyList;
				}
				set
				{
					this.SetPluginKeyList(value);
				}
			}
			public SKBuiltinString_t ImgEncryptKey
			{
				get
				{
					return this.result.ImgEncryptKey;
				}
				set
				{
					this.SetImgEncryptKey(value);
				}
			}
			public SKBuiltinBuffer_t A2Key
			{
				get
				{
					return this.result.A2Key;
				}
				set
				{
					this.SetA2Key(value);
				}
			}
			public SKBuiltinBuffer_t KSid
			{
				get
				{
					return this.result.KSid;
				}
				set
				{
					this.SetKSid(value);
				}
			}
			public uint ProfileFlag
			{
				get
				{
					return this.result.ProfileFlag;
				}
				set
				{
					this.SetProfileFlag(value);
				}
			}
			public string Password
			{
				get
				{
					return this.result.Password;
				}
				set
				{
					this.SetPassword(value);
				}
			}
			public uint TimeStamp
			{
				get
				{
					return this.result.TimeStamp;
				}
				set
				{
					this.SetTimeStamp(value);
				}
			}
			public uint IsAutoReg
			{
				get
				{
					return this.result.IsAutoReg;
				}
				set
				{
					this.SetIsAutoReg(value);
				}
			}
			public Builder()
			{
				this.result = AuthResponse.DefaultInstance;
				this.resultIsReadOnly = true;
			}
			internal Builder(AuthResponse cloneFrom)
			{
				this.result = cloneFrom;
				this.resultIsReadOnly = true;
			}
			private AuthResponse PrepareBuilder()
			{
				if (this.resultIsReadOnly)
				{
					AuthResponse other = this.result;
					this.result = new AuthResponse();
					this.resultIsReadOnly = false;
					this.MergeFrom(other);
				}
				return this.result;
			}
			public override AuthResponse.Builder Clear()
			{
				this.result = AuthResponse.DefaultInstance;
				this.resultIsReadOnly = true;
				return this;
			}
			public override AuthResponse.Builder Clone()
			{
				if (this.resultIsReadOnly)
				{
					return new AuthResponse.Builder(this.result);
				}
				return new AuthResponse.Builder().MergeFrom(this.result);
			}
			public override AuthResponse BuildPartial()
			{
				if (this.resultIsReadOnly)
				{
					return this.result;
				}
				this.resultIsReadOnly = true;
				return this.result.MakeReadOnly();
			}
			public override AuthResponse.Builder MergeFrom(IMessageLite other)
			{
				if (other is AuthResponse)
				{
					return this.MergeFrom((AuthResponse)other);
				}
				base.MergeFrom(other);
				return this;
			}
			public override AuthResponse.Builder MergeFrom(AuthResponse other)
			{
				return this;
			}
			public override AuthResponse.Builder MergeFrom(ICodedInputStream input)
			{
				return this.MergeFrom(input, ExtensionRegistry.Empty);
			}
			public override AuthResponse.Builder MergeFrom(ICodedInputStream input, ExtensionRegistry extensionRegistry)
			{
				this.PrepareBuilder();
				uint num;
				string text;
				while (input.ReadTag(out num, out text))
				{
					if (num == 0u && text != null)
					{
						int num2 = Array.BinarySearch<string>(AuthResponse._authResponseFieldNames, text, StringComparer.get_Ordinal());
						if (num2 < 0)
						{
							this.ParseUnknownField(input, extensionRegistry, num, text);
							continue;
						}
						num = AuthResponse._authResponseFieldTags[num2];
					}
					uint num3 = num;
					if (num3 <= 138u)
					{
						if (num3 <= 64u)
						{
							if (num3 <= 26u)
							{
								if (num3 <= 10u)
								{
									if (num3 == 0u)
									{
										throw InvalidProtocolBufferException.InvalidTag();
									}
									if (num3 == 10u)
									{
										BaseResponse.Builder builder = BaseResponse.CreateBuilder();
										if (this.result.hasBaseResponse)
										{
											builder.MergeFrom(this.BaseResponse);
										}
										input.ReadMessage(builder, extensionRegistry);
										this.BaseResponse = builder.BuildPartial();
										continue;
									}
								}
								else
								{
									if (num3 == 16u)
									{
										this.result.hasUin = input.ReadUInt32(ref this.result.uin_);
										continue;
									}
									if (num3 == 26u)
									{
										SKBuiltinString_t.Builder builder2 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasUserName)
										{
											builder2.MergeFrom(this.UserName);
										}
										input.ReadMessage(builder2, extensionRegistry);
										this.UserName = builder2.BuildPartial();
										continue;
									}
								}
							}
							else
							{
								if (num3 <= 40u)
								{
									if (num3 == 34u)
									{
										SKBuiltinString_t.Builder builder3 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasNickName)
										{
											builder3.MergeFrom(this.NickName);
										}
										input.ReadMessage(builder3, extensionRegistry);
										this.NickName = builder3.BuildPartial();
										continue;
									}
									if (num3 == 40u)
									{
										this.result.hasBindUin = input.ReadUInt32(ref this.result.bindUin_);
										continue;
									}
								}
								else
								{
									if (num3 == 50u)
									{
										SKBuiltinString_t.Builder builder4 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasBindEmail)
										{
											builder4.MergeFrom(this.BindEmail);
										}
										input.ReadMessage(builder4, extensionRegistry);
										this.BindEmail = builder4.BuildPartial();
										continue;
									}
									if (num3 == 58u)
									{
										SKBuiltinString_t.Builder builder5 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasBindMobile)
										{
											builder5.MergeFrom(this.BindMobile);
										}
										input.ReadMessage(builder5, extensionRegistry);
										this.BindMobile = builder5.BuildPartial();
										continue;
									}
									if (num3 == 64u)
									{
										this.result.hasStatus = input.ReadUInt32(ref this.result.status_);
										continue;
									}
								}
							}
						}
						else
						{
							if (num3 <= 98u)
							{
								if (num3 <= 82u)
								{
									if (num3 == 74u)
									{
										this.result.hasSessionKey = input.ReadBytes(ref this.result.sessionKey_);
										continue;
									}
									if (num3 == 82u)
									{
										SKBuiltinString_t.Builder builder6 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasImgSid)
										{
											builder6.MergeFrom(this.ImgSid);
										}
										input.ReadMessage(builder6, extensionRegistry);
										this.ImgSid = builder6.BuildPartial();
										continue;
									}
								}
								else
								{
									if (num3 == 90u)
									{
										SKBuiltinBuffer_t.Builder builder7 = SKBuiltinBuffer_t.CreateBuilder();
										if (this.result.hasImgBuf)
										{
											builder7.MergeFrom(this.ImgBuf);
										}
										input.ReadMessage(builder7, extensionRegistry);
										this.ImgBuf = builder7.BuildPartial();
										continue;
									}
									if (num3 == 98u)
									{
										SKBuiltinString_t.Builder builder8 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasOfficialUserName)
										{
											builder8.MergeFrom(this.OfficialUserName);
										}
										input.ReadMessage(builder8, extensionRegistry);
										this.OfficialUserName = builder8.BuildPartial();
										continue;
									}
								}
							}
							else
							{
								if (num3 <= 114u)
								{
									if (num3 == 106u)
									{
										SKBuiltinString_t.Builder builder9 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasOfficialNickName)
										{
											builder9.MergeFrom(this.OfficialNickName);
										}
										input.ReadMessage(builder9, extensionRegistry);
										this.OfficialNickName = builder9.BuildPartial();
										continue;
									}
									if (num3 == 114u)
									{
										SKBuiltinString_t.Builder builder10 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasQQMicroBlogUserName)
										{
											builder10.MergeFrom(this.QQMicroBlogUserName);
										}
										input.ReadMessage(builder10, extensionRegistry);
										this.QQMicroBlogUserName = builder10.BuildPartial();
										continue;
									}
								}
								else
								{
									if (num3 == 120u)
									{
										this.result.hasQQMicroBlogStatus = input.ReadUInt32(ref this.result.qQMicroBlogStatus_);
										continue;
									}
									if (num3 == 128u)
									{
										this.result.hasNewVersion = input.ReadUInt32(ref this.result.newVersion_);
										continue;
									}
									if (num3 == 138u)
									{
										this.result.hasTicket = input.ReadString(ref this.result.ticket_);
										continue;
									}
								}
							}
						}
					}
					else
					{
						if (num3 <= 208u)
						{
							if (num3 <= 170u)
							{
								if (num3 <= 152u)
								{
									if (num3 == 144u)
									{
										this.result.hasPushMailStatus = input.ReadUInt32(ref this.result.pushMailStatus_);
										continue;
									}
									if (num3 == 152u)
									{
										this.result.hasSendCardBitFlag = input.ReadUInt32(ref this.result.sendCardBitFlag_);
										continue;
									}
								}
								else
								{
									if (num3 == 162u)
									{
										this.result.hasPushMailSettingTicket = input.ReadString(ref this.result.pushMailSettingTicket_);
										continue;
									}
									if (num3 == 170u)
									{
										BuiltinIPList.Builder builder11 = BuiltinIPList.CreateBuilder();
										if (this.result.hasBuiltinIPList)
										{
											builder11.MergeFrom(this.BuiltinIPList);
										}
										input.ReadMessage(builder11, extensionRegistry);
										this.BuiltinIPList = builder11.BuildPartial();
										continue;
									}
								}
							}
							else
							{
								if (num3 <= 186u)
								{
									if (num3 == 178u)
									{
										this.result.hasFSURL = input.ReadString(ref this.result.fSURL_);
										continue;
									}
									if (num3 == 186u)
									{
										NetworkControl.Builder builder12 = NetworkControl.CreateBuilder();
										if (this.result.hasNetworkControl)
										{
											builder12.MergeFrom(this.NetworkControl);
										}
										input.ReadMessage(builder12, extensionRegistry);
										this.NetworkControl = builder12.BuildPartial();
										continue;
									}
								}
								else
								{
									if (num3 == 192u)
									{
										this.result.hasPluginFlag = input.ReadUInt32(ref this.result.pluginFlag_);
										continue;
									}
									if (num3 == 202u)
									{
										this.result.hasAlias = input.ReadString(ref this.result.alias_);
										continue;
									}
									if (num3 == 208u)
									{
										this.result.hasRegType = input.ReadUInt32(ref this.result.regType_);
										continue;
									}
								}
							}
						}
						else
						{
							if (num3 <= 250u)
							{
								if (num3 <= 226u)
								{
									if (num3 == 218u)
									{
										this.result.hasAuthKey = input.ReadString(ref this.result.authKey_);
										continue;
									}
									if (num3 == 226u)
									{
										this.result.hasSid = input.ReadString(ref this.result.sid_);
										continue;
									}
								}
								else
								{
									if (num3 == 234u)
									{
										PluginKeyList.Builder builder13 = PluginKeyList.CreateBuilder();
										if (this.result.hasPluginKeyList)
										{
											builder13.MergeFrom(this.PluginKeyList);
										}
										input.ReadMessage(builder13, extensionRegistry);
										this.PluginKeyList = builder13.BuildPartial();
										continue;
									}
									if (num3 == 242u)
									{
										SKBuiltinString_t.Builder builder14 = SKBuiltinString_t.CreateBuilder();
										if (this.result.hasImgEncryptKey)
										{
											builder14.MergeFrom(this.ImgEncryptKey);
										}
										input.ReadMessage(builder14, extensionRegistry);
										this.ImgEncryptKey = builder14.BuildPartial();
										continue;
									}
									if (num3 == 250u)
									{
										SKBuiltinBuffer_t.Builder builder15 = SKBuiltinBuffer_t.CreateBuilder();
										if (this.result.hasA2Key)
										{
											builder15.MergeFrom(this.A2Key);
										}
										input.ReadMessage(builder15, extensionRegistry);
										this.A2Key = builder15.BuildPartial();
										continue;
									}
								}
							}
							else
							{
								if (num3 <= 264u)
								{
									if (num3 == 258u)
									{
										SKBuiltinBuffer_t.Builder builder16 = SKBuiltinBuffer_t.CreateBuilder();
										if (this.result.hasKSid)
										{
											builder16.MergeFrom(this.KSid);
										}
										input.ReadMessage(builder16, extensionRegistry);
										this.KSid = builder16.BuildPartial();
										continue;
									}
									if (num3 == 264u)
									{
										this.result.hasProfileFlag = input.ReadUInt32(ref this.result.profileFlag_);
										continue;
									}
								}
								else
								{
									if (num3 == 274u)
									{
										this.result.hasPassword = input.ReadString(ref this.result.password_);
										continue;
									}
									if (num3 == 280u)
									{
										this.result.hasTimeStamp = input.ReadUInt32(ref this.result.timeStamp_);
										continue;
									}
									if (num3 == 288u)
									{
										this.result.hasIsAutoReg = input.ReadUInt32(ref this.result.isAutoReg_);
										continue;
									}
								}
							}
						}
					}
					if (WireFormat.IsEndGroupTag(num))
					{
						return this;
					}
					this.ParseUnknownField(input, extensionRegistry, num, text);
				}
				return this;
			}
			public AuthResponse.Builder SetBaseResponse(BaseResponse value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasBaseResponse = true;
				this.result.baseResponse_ = value;
				return this;
			}
			public AuthResponse.Builder SetBaseResponse(BaseResponse.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasBaseResponse = true;
				this.result.baseResponse_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeBaseResponse(BaseResponse value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasBaseResponse && this.result.baseResponse_ != BaseResponse.DefaultInstance)
				{
					this.result.baseResponse_ = BaseResponse.CreateBuilder(this.result.baseResponse_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.baseResponse_ = value;
				}
				this.result.hasBaseResponse = true;
				return this;
			}
			public AuthResponse.Builder ClearBaseResponse()
			{
				this.PrepareBuilder();
				this.result.hasBaseResponse = false;
				this.result.baseResponse_ = null;
				return this;
			}
			public AuthResponse.Builder SetUin(uint value)
			{
				this.PrepareBuilder();
				this.result.hasUin = true;
				this.result.uin_ = value;
				return this;
			}
			public AuthResponse.Builder ClearUin()
			{
				this.PrepareBuilder();
				this.result.hasUin = false;
				this.result.uin_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetUserName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasUserName = true;
				this.result.userName_ = value;
				return this;
			}
			public AuthResponse.Builder SetUserName(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasUserName = true;
				this.result.userName_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeUserName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasUserName && this.result.userName_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.userName_ = SKBuiltinString_t.CreateBuilder(this.result.userName_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.userName_ = value;
				}
				this.result.hasUserName = true;
				return this;
			}
			public AuthResponse.Builder ClearUserName()
			{
				this.PrepareBuilder();
				this.result.hasUserName = false;
				this.result.userName_ = null;
				return this;
			}
			public AuthResponse.Builder SetNickName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasNickName = true;
				this.result.nickName_ = value;
				return this;
			}
			public AuthResponse.Builder SetNickName(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasNickName = true;
				this.result.nickName_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeNickName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasNickName && this.result.nickName_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.nickName_ = SKBuiltinString_t.CreateBuilder(this.result.nickName_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.nickName_ = value;
				}
				this.result.hasNickName = true;
				return this;
			}
			public AuthResponse.Builder ClearNickName()
			{
				this.PrepareBuilder();
				this.result.hasNickName = false;
				this.result.nickName_ = null;
				return this;
			}
			public AuthResponse.Builder SetBindUin(uint value)
			{
				this.PrepareBuilder();
				this.result.hasBindUin = true;
				this.result.bindUin_ = value;
				return this;
			}
			public AuthResponse.Builder ClearBindUin()
			{
				this.PrepareBuilder();
				this.result.hasBindUin = false;
				this.result.bindUin_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetBindEmail(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasBindEmail = true;
				this.result.bindEmail_ = value;
				return this;
			}
			public AuthResponse.Builder SetBindEmail(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasBindEmail = true;
				this.result.bindEmail_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeBindEmail(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasBindEmail && this.result.bindEmail_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.bindEmail_ = SKBuiltinString_t.CreateBuilder(this.result.bindEmail_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.bindEmail_ = value;
				}
				this.result.hasBindEmail = true;
				return this;
			}
			public AuthResponse.Builder ClearBindEmail()
			{
				this.PrepareBuilder();
				this.result.hasBindEmail = false;
				this.result.bindEmail_ = null;
				return this;
			}
			public AuthResponse.Builder SetBindMobile(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasBindMobile = true;
				this.result.bindMobile_ = value;
				return this;
			}
			public AuthResponse.Builder SetBindMobile(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasBindMobile = true;
				this.result.bindMobile_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeBindMobile(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasBindMobile && this.result.bindMobile_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.bindMobile_ = SKBuiltinString_t.CreateBuilder(this.result.bindMobile_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.bindMobile_ = value;
				}
				this.result.hasBindMobile = true;
				return this;
			}
			public AuthResponse.Builder ClearBindMobile()
			{
				this.PrepareBuilder();
				this.result.hasBindMobile = false;
				this.result.bindMobile_ = null;
				return this;
			}
			public AuthResponse.Builder SetStatus(uint value)
			{
				this.PrepareBuilder();
				this.result.hasStatus = true;
				this.result.status_ = value;
				return this;
			}
			public AuthResponse.Builder ClearStatus()
			{
				this.PrepareBuilder();
				this.result.hasStatus = false;
				this.result.status_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetSessionKey(ByteString value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasSessionKey = true;
				this.result.sessionKey_ = value;
				return this;
			}
			public AuthResponse.Builder ClearSessionKey()
			{
				this.PrepareBuilder();
				this.result.hasSessionKey = false;
				this.result.sessionKey_ = ByteString.Empty;
				return this;
			}
			public AuthResponse.Builder SetImgSid(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasImgSid = true;
				this.result.imgSid_ = value;
				return this;
			}
			public AuthResponse.Builder SetImgSid(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasImgSid = true;
				this.result.imgSid_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeImgSid(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasImgSid && this.result.imgSid_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.imgSid_ = SKBuiltinString_t.CreateBuilder(this.result.imgSid_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.imgSid_ = value;
				}
				this.result.hasImgSid = true;
				return this;
			}
			public AuthResponse.Builder ClearImgSid()
			{
				this.PrepareBuilder();
				this.result.hasImgSid = false;
				this.result.imgSid_ = null;
				return this;
			}
			public AuthResponse.Builder SetImgBuf(SKBuiltinBuffer_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasImgBuf = true;
				this.result.imgBuf_ = value;
				return this;
			}
			public AuthResponse.Builder SetImgBuf(SKBuiltinBuffer_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasImgBuf = true;
				this.result.imgBuf_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeImgBuf(SKBuiltinBuffer_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasImgBuf && this.result.imgBuf_ != SKBuiltinBuffer_t.DefaultInstance)
				{
					this.result.imgBuf_ = SKBuiltinBuffer_t.CreateBuilder(this.result.imgBuf_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.imgBuf_ = value;
				}
				this.result.hasImgBuf = true;
				return this;
			}
			public AuthResponse.Builder ClearImgBuf()
			{
				this.PrepareBuilder();
				this.result.hasImgBuf = false;
				this.result.imgBuf_ = null;
				return this;
			}
			public AuthResponse.Builder SetOfficialUserName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasOfficialUserName = true;
				this.result.officialUserName_ = value;
				return this;
			}
			public AuthResponse.Builder SetOfficialUserName(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasOfficialUserName = true;
				this.result.officialUserName_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeOfficialUserName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasOfficialUserName && this.result.officialUserName_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.officialUserName_ = SKBuiltinString_t.CreateBuilder(this.result.officialUserName_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.officialUserName_ = value;
				}
				this.result.hasOfficialUserName = true;
				return this;
			}
			public AuthResponse.Builder ClearOfficialUserName()
			{
				this.PrepareBuilder();
				this.result.hasOfficialUserName = false;
				this.result.officialUserName_ = null;
				return this;
			}
			public AuthResponse.Builder SetOfficialNickName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasOfficialNickName = true;
				this.result.officialNickName_ = value;
				return this;
			}
			public AuthResponse.Builder SetOfficialNickName(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasOfficialNickName = true;
				this.result.officialNickName_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeOfficialNickName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasOfficialNickName && this.result.officialNickName_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.officialNickName_ = SKBuiltinString_t.CreateBuilder(this.result.officialNickName_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.officialNickName_ = value;
				}
				this.result.hasOfficialNickName = true;
				return this;
			}
			public AuthResponse.Builder ClearOfficialNickName()
			{
				this.PrepareBuilder();
				this.result.hasOfficialNickName = false;
				this.result.officialNickName_ = null;
				return this;
			}
			public AuthResponse.Builder SetQQMicroBlogUserName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasQQMicroBlogUserName = true;
				this.result.qQMicroBlogUserName_ = value;
				return this;
			}
			public AuthResponse.Builder SetQQMicroBlogUserName(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasQQMicroBlogUserName = true;
				this.result.qQMicroBlogUserName_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeQQMicroBlogUserName(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasQQMicroBlogUserName && this.result.qQMicroBlogUserName_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.qQMicroBlogUserName_ = SKBuiltinString_t.CreateBuilder(this.result.qQMicroBlogUserName_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.qQMicroBlogUserName_ = value;
				}
				this.result.hasQQMicroBlogUserName = true;
				return this;
			}
			public AuthResponse.Builder ClearQQMicroBlogUserName()
			{
				this.PrepareBuilder();
				this.result.hasQQMicroBlogUserName = false;
				this.result.qQMicroBlogUserName_ = null;
				return this;
			}
			public AuthResponse.Builder SetQQMicroBlogStatus(uint value)
			{
				this.PrepareBuilder();
				this.result.hasQQMicroBlogStatus = true;
				this.result.qQMicroBlogStatus_ = value;
				return this;
			}
			public AuthResponse.Builder ClearQQMicroBlogStatus()
			{
				this.PrepareBuilder();
				this.result.hasQQMicroBlogStatus = false;
				this.result.qQMicroBlogStatus_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetNewVersion(uint value)
			{
				this.PrepareBuilder();
				this.result.hasNewVersion = true;
				this.result.newVersion_ = value;
				return this;
			}
			public AuthResponse.Builder ClearNewVersion()
			{
				this.PrepareBuilder();
				this.result.hasNewVersion = false;
				this.result.newVersion_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetTicket(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasTicket = true;
				this.result.ticket_ = value;
				return this;
			}
			public AuthResponse.Builder ClearTicket()
			{
				this.PrepareBuilder();
				this.result.hasTicket = false;
				this.result.ticket_ = "";
				return this;
			}
			public AuthResponse.Builder SetPushMailStatus(uint value)
			{
				this.PrepareBuilder();
				this.result.hasPushMailStatus = true;
				this.result.pushMailStatus_ = value;
				return this;
			}
			public AuthResponse.Builder ClearPushMailStatus()
			{
				this.PrepareBuilder();
				this.result.hasPushMailStatus = false;
				this.result.pushMailStatus_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetSendCardBitFlag(uint value)
			{
				this.PrepareBuilder();
				this.result.hasSendCardBitFlag = true;
				this.result.sendCardBitFlag_ = value;
				return this;
			}
			public AuthResponse.Builder ClearSendCardBitFlag()
			{
				this.PrepareBuilder();
				this.result.hasSendCardBitFlag = false;
				this.result.sendCardBitFlag_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetPushMailSettingTicket(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasPushMailSettingTicket = true;
				this.result.pushMailSettingTicket_ = value;
				return this;
			}
			public AuthResponse.Builder ClearPushMailSettingTicket()
			{
				this.PrepareBuilder();
				this.result.hasPushMailSettingTicket = false;
				this.result.pushMailSettingTicket_ = "";
				return this;
			}
			public AuthResponse.Builder SetBuiltinIPList(BuiltinIPList value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasBuiltinIPList = true;
				this.result.builtinIPList_ = value;
				return this;
			}
			public AuthResponse.Builder SetBuiltinIPList(BuiltinIPList.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasBuiltinIPList = true;
				this.result.builtinIPList_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeBuiltinIPList(BuiltinIPList value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasBuiltinIPList && this.result.builtinIPList_ != BuiltinIPList.DefaultInstance)
				{
					this.result.builtinIPList_ = BuiltinIPList.CreateBuilder(this.result.builtinIPList_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.builtinIPList_ = value;
				}
				this.result.hasBuiltinIPList = true;
				return this;
			}
			public AuthResponse.Builder ClearBuiltinIPList()
			{
				this.PrepareBuilder();
				this.result.hasBuiltinIPList = false;
				this.result.builtinIPList_ = null;
				return this;
			}
			public AuthResponse.Builder SetFSURL(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasFSURL = true;
				this.result.fSURL_ = value;
				return this;
			}
			public AuthResponse.Builder ClearFSURL()
			{
				this.PrepareBuilder();
				this.result.hasFSURL = false;
				this.result.fSURL_ = "";
				return this;
			}
			public AuthResponse.Builder SetNetworkControl(NetworkControl value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasNetworkControl = true;
				this.result.networkControl_ = value;
				return this;
			}
			public AuthResponse.Builder SetNetworkControl(NetworkControl.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasNetworkControl = true;
				this.result.networkControl_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeNetworkControl(NetworkControl value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasNetworkControl && this.result.networkControl_ != NetworkControl.DefaultInstance)
				{
					this.result.networkControl_ = NetworkControl.CreateBuilder(this.result.networkControl_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.networkControl_ = value;
				}
				this.result.hasNetworkControl = true;
				return this;
			}
			public AuthResponse.Builder ClearNetworkControl()
			{
				this.PrepareBuilder();
				this.result.hasNetworkControl = false;
				this.result.networkControl_ = null;
				return this;
			}
			public AuthResponse.Builder SetPluginFlag(uint value)
			{
				this.PrepareBuilder();
				this.result.hasPluginFlag = true;
				this.result.pluginFlag_ = value;
				return this;
			}
			public AuthResponse.Builder ClearPluginFlag()
			{
				this.PrepareBuilder();
				this.result.hasPluginFlag = false;
				this.result.pluginFlag_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetAlias(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasAlias = true;
				this.result.alias_ = value;
				return this;
			}
			public AuthResponse.Builder ClearAlias()
			{
				this.PrepareBuilder();
				this.result.hasAlias = false;
				this.result.alias_ = "";
				return this;
			}
			public AuthResponse.Builder SetRegType(uint value)
			{
				this.PrepareBuilder();
				this.result.hasRegType = true;
				this.result.regType_ = value;
				return this;
			}
			public AuthResponse.Builder ClearRegType()
			{
				this.PrepareBuilder();
				this.result.hasRegType = false;
				this.result.regType_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetAuthKey(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasAuthKey = true;
				this.result.authKey_ = value;
				return this;
			}
			public AuthResponse.Builder ClearAuthKey()
			{
				this.PrepareBuilder();
				this.result.hasAuthKey = false;
				this.result.authKey_ = "";
				return this;
			}
			public AuthResponse.Builder SetSid(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasSid = true;
				this.result.sid_ = value;
				return this;
			}
			public AuthResponse.Builder ClearSid()
			{
				this.PrepareBuilder();
				this.result.hasSid = false;
				this.result.sid_ = "";
				return this;
			}
			public AuthResponse.Builder SetPluginKeyList(PluginKeyList value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasPluginKeyList = true;
				this.result.pluginKeyList_ = value;
				return this;
			}
			public AuthResponse.Builder SetPluginKeyList(PluginKeyList.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasPluginKeyList = true;
				this.result.pluginKeyList_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergePluginKeyList(PluginKeyList value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasPluginKeyList && this.result.pluginKeyList_ != PluginKeyList.DefaultInstance)
				{
					this.result.pluginKeyList_ = PluginKeyList.CreateBuilder(this.result.pluginKeyList_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.pluginKeyList_ = value;
				}
				this.result.hasPluginKeyList = true;
				return this;
			}
			public AuthResponse.Builder ClearPluginKeyList()
			{
				this.PrepareBuilder();
				this.result.hasPluginKeyList = false;
				this.result.pluginKeyList_ = null;
				return this;
			}
			public AuthResponse.Builder SetImgEncryptKey(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasImgEncryptKey = true;
				this.result.imgEncryptKey_ = value;
				return this;
			}
			public AuthResponse.Builder SetImgEncryptKey(SKBuiltinString_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasImgEncryptKey = true;
				this.result.imgEncryptKey_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeImgEncryptKey(SKBuiltinString_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasImgEncryptKey && this.result.imgEncryptKey_ != SKBuiltinString_t.DefaultInstance)
				{
					this.result.imgEncryptKey_ = SKBuiltinString_t.CreateBuilder(this.result.imgEncryptKey_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.imgEncryptKey_ = value;
				}
				this.result.hasImgEncryptKey = true;
				return this;
			}
			public AuthResponse.Builder ClearImgEncryptKey()
			{
				this.PrepareBuilder();
				this.result.hasImgEncryptKey = false;
				this.result.imgEncryptKey_ = null;
				return this;
			}
			public AuthResponse.Builder SetA2Key(SKBuiltinBuffer_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasA2Key = true;
				this.result.a2Key_ = value;
				return this;
			}
			public AuthResponse.Builder SetA2Key(SKBuiltinBuffer_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasA2Key = true;
				this.result.a2Key_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeA2Key(SKBuiltinBuffer_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasA2Key && this.result.a2Key_ != SKBuiltinBuffer_t.DefaultInstance)
				{
					this.result.a2Key_ = SKBuiltinBuffer_t.CreateBuilder(this.result.a2Key_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.a2Key_ = value;
				}
				this.result.hasA2Key = true;
				return this;
			}
			public AuthResponse.Builder ClearA2Key()
			{
				this.PrepareBuilder();
				this.result.hasA2Key = false;
				this.result.a2Key_ = null;
				return this;
			}
			public AuthResponse.Builder SetKSid(SKBuiltinBuffer_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasKSid = true;
				this.result.kSid_ = value;
				return this;
			}
			public AuthResponse.Builder SetKSid(SKBuiltinBuffer_t.Builder builderForValue)
			{
				ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
				this.PrepareBuilder();
				this.result.hasKSid = true;
				this.result.kSid_ = builderForValue.Build();
				return this;
			}
			public AuthResponse.Builder MergeKSid(SKBuiltinBuffer_t value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				if (this.result.hasKSid && this.result.kSid_ != SKBuiltinBuffer_t.DefaultInstance)
				{
					this.result.kSid_ = SKBuiltinBuffer_t.CreateBuilder(this.result.kSid_).MergeFrom(value).BuildPartial();
				}
				else
				{
					this.result.kSid_ = value;
				}
				this.result.hasKSid = true;
				return this;
			}
			public AuthResponse.Builder ClearKSid()
			{
				this.PrepareBuilder();
				this.result.hasKSid = false;
				this.result.kSid_ = null;
				return this;
			}
			public AuthResponse.Builder SetProfileFlag(uint value)
			{
				this.PrepareBuilder();
				this.result.hasProfileFlag = true;
				this.result.profileFlag_ = value;
				return this;
			}
			public AuthResponse.Builder ClearProfileFlag()
			{
				this.PrepareBuilder();
				this.result.hasProfileFlag = false;
				this.result.profileFlag_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetPassword(string value)
			{
				ThrowHelper.ThrowIfNull(value, "value");
				this.PrepareBuilder();
				this.result.hasPassword = true;
				this.result.password_ = value;
				return this;
			}
			public AuthResponse.Builder ClearPassword()
			{
				this.PrepareBuilder();
				this.result.hasPassword = false;
				this.result.password_ = "";
				return this;
			}
			public AuthResponse.Builder SetTimeStamp(uint value)
			{
				this.PrepareBuilder();
				this.result.hasTimeStamp = true;
				this.result.timeStamp_ = value;
				return this;
			}
			public AuthResponse.Builder ClearTimeStamp()
			{
				this.PrepareBuilder();
				this.result.hasTimeStamp = false;
				this.result.timeStamp_ = 0u;
				return this;
			}
			public AuthResponse.Builder SetIsAutoReg(uint value)
			{
				this.PrepareBuilder();
				this.result.hasIsAutoReg = true;
				this.result.isAutoReg_ = value;
				return this;
			}
			public AuthResponse.Builder ClearIsAutoReg()
			{
				this.PrepareBuilder();
				this.result.hasIsAutoReg = false;
				this.result.isAutoReg_ = 0u;
				return this;
			}
		}
		public const int BaseResponseFieldNumber = 1;
		public const int UinFieldNumber = 2;
		public const int UserNameFieldNumber = 3;
		public const int NickNameFieldNumber = 4;
		public const int BindUinFieldNumber = 5;
		public const int BindEmailFieldNumber = 6;
		public const int BindMobileFieldNumber = 7;
		public const int StatusFieldNumber = 8;
		public const int SessionKeyFieldNumber = 9;
		public const int ImgSidFieldNumber = 10;
		public const int ImgBufFieldNumber = 11;
		public const int OfficialUserNameFieldNumber = 12;
		public const int OfficialNickNameFieldNumber = 13;
		public const int QQMicroBlogUserNameFieldNumber = 14;
		public const int QQMicroBlogStatusFieldNumber = 15;
		public const int NewVersionFieldNumber = 16;
		public const int TicketFieldNumber = 17;
		public const int PushMailStatusFieldNumber = 18;
		public const int SendCardBitFlagFieldNumber = 19;
		public const int PushMailSettingTicketFieldNumber = 20;
		public const int BuiltinIPListFieldNumber = 21;
		public const int FSURLFieldNumber = 22;
		public const int NetworkControlFieldNumber = 23;
		public const int PluginFlagFieldNumber = 24;
		public const int AliasFieldNumber = 25;
		public const int RegTypeFieldNumber = 26;
		public const int AuthKeyFieldNumber = 27;
		public const int SidFieldNumber = 28;
		public const int PluginKeyListFieldNumber = 29;
		public const int ImgEncryptKeyFieldNumber = 30;
		public const int A2KeyFieldNumber = 31;
		public const int KSidFieldNumber = 32;
		public const int ProfileFlagFieldNumber = 33;
		public const int PasswordFieldNumber = 34;
		public const int TimeStampFieldNumber = 35;
		public const int IsAutoRegFieldNumber = 36;
		private static readonly AuthResponse defaultInstance;
		private static readonly string[] _authResponseFieldNames;
		private static readonly uint[] _authResponseFieldTags;
		private bool hasBaseResponse;
		private BaseResponse baseResponse_;
		private bool hasUin;
		private uint uin_;
		private bool hasUserName;
		private SKBuiltinString_t userName_;
		private bool hasNickName;
		private SKBuiltinString_t nickName_;
		private bool hasBindUin;
		private uint bindUin_;
		private bool hasBindEmail;
		private SKBuiltinString_t bindEmail_;
		private bool hasBindMobile;
		private SKBuiltinString_t bindMobile_;
		private bool hasStatus;
		private uint status_;
		private bool hasSessionKey;
		private ByteString sessionKey_ = ByteString.Empty;
		private bool hasImgSid;
		private SKBuiltinString_t imgSid_;
		private bool hasImgBuf;
		private SKBuiltinBuffer_t imgBuf_;
		private bool hasOfficialUserName;
		private SKBuiltinString_t officialUserName_;
		private bool hasOfficialNickName;
		private SKBuiltinString_t officialNickName_;
		private bool hasQQMicroBlogUserName;
		private SKBuiltinString_t qQMicroBlogUserName_;
		private bool hasQQMicroBlogStatus;
		private uint qQMicroBlogStatus_;
		private bool hasNewVersion;
		private uint newVersion_;
		private bool hasTicket;
		private string ticket_ = "";
		private bool hasPushMailStatus;
		private uint pushMailStatus_;
		private bool hasSendCardBitFlag;
		private uint sendCardBitFlag_;
		private bool hasPushMailSettingTicket;
		private string pushMailSettingTicket_ = "";
		private bool hasBuiltinIPList;
		private BuiltinIPList builtinIPList_;
		private bool hasFSURL;
		private string fSURL_ = "";
		private bool hasNetworkControl;
		private NetworkControl networkControl_;
		private bool hasPluginFlag;
		private uint pluginFlag_;
		private bool hasAlias;
		private string alias_ = "";
		private bool hasRegType;
		private uint regType_;
		private bool hasAuthKey;
		private string authKey_ = "";
		private bool hasSid;
		private string sid_ = "";
		private bool hasPluginKeyList;
		private PluginKeyList pluginKeyList_;
		private bool hasImgEncryptKey;
		private SKBuiltinString_t imgEncryptKey_;
		private bool hasA2Key;
		private SKBuiltinBuffer_t a2Key_;
		private bool hasKSid;
		private SKBuiltinBuffer_t kSid_;
		private bool hasProfileFlag;
		private uint profileFlag_;
		private bool hasPassword;
		private string password_ = "";
		private bool hasTimeStamp;
		private uint timeStamp_;
		private bool hasIsAutoReg;
		private uint isAutoReg_;
		private int memoizedSerializedSize = -1;
		public static AuthResponse DefaultInstance
		{
			get
			{
				return AuthResponse.defaultInstance;
			}
		}
		public override AuthResponse DefaultInstanceForType
		{
			get
			{
				return AuthResponse.DefaultInstance;
			}
		}
		protected override AuthResponse ThisMessage
		{
			get
			{
				return this;
			}
		}
		public BaseResponse BaseResponse
		{
			get
			{
				return this.baseResponse_ ?? BaseResponse.DefaultInstance;
			}
		}
		public uint Uin
		{
			get
			{
				return this.uin_;
			}
		}
		public SKBuiltinString_t UserName
		{
			get
			{
				return this.userName_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public SKBuiltinString_t NickName
		{
			get
			{
				return this.nickName_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public uint BindUin
		{
			get
			{
				return this.bindUin_;
			}
		}
		public SKBuiltinString_t BindEmail
		{
			get
			{
				return this.bindEmail_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public SKBuiltinString_t BindMobile
		{
			get
			{
				return this.bindMobile_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public uint Status
		{
			get
			{
				return this.status_;
			}
		}
		public ByteString SessionKey
		{
			get
			{
				return this.sessionKey_;
			}
		}
		public SKBuiltinString_t ImgSid
		{
			get
			{
				return this.imgSid_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public SKBuiltinBuffer_t ImgBuf
		{
			get
			{
				return this.imgBuf_ ?? SKBuiltinBuffer_t.DefaultInstance;
			}
		}
		public SKBuiltinString_t OfficialUserName
		{
			get
			{
				return this.officialUserName_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public SKBuiltinString_t OfficialNickName
		{
			get
			{
				return this.officialNickName_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public SKBuiltinString_t QQMicroBlogUserName
		{
			get
			{
				return this.qQMicroBlogUserName_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public uint QQMicroBlogStatus
		{
			get
			{
				return this.qQMicroBlogStatus_;
			}
		}
		public uint NewVersion
		{
			get
			{
				return this.newVersion_;
			}
		}
		public string Ticket
		{
			get
			{
				return this.ticket_;
			}
		}
		public uint PushMailStatus
		{
			get
			{
				return this.pushMailStatus_;
			}
		}
		public uint SendCardBitFlag
		{
			get
			{
				return this.sendCardBitFlag_;
			}
		}
		public string PushMailSettingTicket
		{
			get
			{
				return this.pushMailSettingTicket_;
			}
		}
		public BuiltinIPList BuiltinIPList
		{
			get
			{
				return this.builtinIPList_ ?? BuiltinIPList.DefaultInstance;
			}
		}
		public string FSURL
		{
			get
			{
				return this.fSURL_;
			}
		}
		public NetworkControl NetworkControl
		{
			get
			{
				return this.networkControl_ ?? NetworkControl.DefaultInstance;
			}
		}
		public uint PluginFlag
		{
			get
			{
				return this.pluginFlag_;
			}
		}
		public string Alias
		{
			get
			{
				return this.alias_;
			}
		}
		public uint RegType
		{
			get
			{
				return this.regType_;
			}
		}
		public string AuthKey
		{
			get
			{
				return this.authKey_;
			}
		}
		public string Sid
		{
			get
			{
				return this.sid_;
			}
		}
		public PluginKeyList PluginKeyList
		{
			get
			{
				return this.pluginKeyList_ ?? PluginKeyList.DefaultInstance;
			}
		}
		public SKBuiltinString_t ImgEncryptKey
		{
			get
			{
				return this.imgEncryptKey_ ?? SKBuiltinString_t.DefaultInstance;
			}
		}
		public SKBuiltinBuffer_t A2Key
		{
			get
			{
				return this.a2Key_ ?? SKBuiltinBuffer_t.DefaultInstance;
			}
		}
		public SKBuiltinBuffer_t KSid
		{
			get
			{
				return this.kSid_ ?? SKBuiltinBuffer_t.DefaultInstance;
			}
		}
		public uint ProfileFlag
		{
			get
			{
				return this.profileFlag_;
			}
		}
		public string Password
		{
			get
			{
				return this.password_;
			}
		}
		public uint TimeStamp
		{
			get
			{
				return this.timeStamp_;
			}
		}
		public uint IsAutoReg
		{
			get
			{
				return this.isAutoReg_;
			}
		}
		public override bool IsInitialized
		{
			get
			{
				return this.hasBaseResponse && this.hasUin && this.hasUserName && this.hasNickName && this.hasBindUin && this.hasBindEmail && this.hasBindMobile && this.hasStatus && this.hasSessionKey && this.hasImgSid && this.hasImgBuf && this.hasOfficialUserName && this.hasOfficialNickName && this.BaseResponse.IsInitialized && this.ImgBuf.IsInitialized;
			}
		}
		public override int SerializedSize
		{
			get
			{
				int num = this.memoizedSerializedSize;
				if (num != -1)
				{
					return num;
				}
				num = 0;
				if (this.hasBaseResponse)
				{
					num += CodedOutputStream.ComputeMessageSize(1, this.BaseResponse);
				}
				if (this.hasUin)
				{
					num += CodedOutputStream.ComputeUInt32Size(2, this.Uin);
				}
				if (this.hasUserName)
				{
					num += CodedOutputStream.ComputeMessageSize(3, this.UserName);
				}
				if (this.hasNickName)
				{
					num += CodedOutputStream.ComputeMessageSize(4, this.NickName);
				}
				if (this.hasBindUin)
				{
					num += CodedOutputStream.ComputeUInt32Size(5, this.BindUin);
				}
				if (this.hasBindEmail)
				{
					num += CodedOutputStream.ComputeMessageSize(6, this.BindEmail);
				}
				if (this.hasBindMobile)
				{
					num += CodedOutputStream.ComputeMessageSize(7, this.BindMobile);
				}
				if (this.hasStatus)
				{
					num += CodedOutputStream.ComputeUInt32Size(8, this.Status);
				}
				if (this.hasSessionKey)
				{
					num += CodedOutputStream.ComputeBytesSize(9, this.SessionKey);
				}
				if (this.hasImgSid)
				{
					num += CodedOutputStream.ComputeMessageSize(10, this.ImgSid);
				}
				if (this.hasImgBuf)
				{
					num += CodedOutputStream.ComputeMessageSize(11, this.ImgBuf);
				}
				if (this.hasOfficialUserName)
				{
					num += CodedOutputStream.ComputeMessageSize(12, this.OfficialUserName);
				}
				if (this.hasOfficialNickName)
				{
					num += CodedOutputStream.ComputeMessageSize(13, this.OfficialNickName);
				}
				if (this.hasQQMicroBlogUserName)
				{
					num += CodedOutputStream.ComputeMessageSize(14, this.QQMicroBlogUserName);
				}
				if (this.hasQQMicroBlogStatus)
				{
					num += CodedOutputStream.ComputeUInt32Size(15, this.QQMicroBlogStatus);
				}
				if (this.hasNewVersion)
				{
					num += CodedOutputStream.ComputeUInt32Size(16, this.NewVersion);
				}
				if (this.hasTicket)
				{
					num += CodedOutputStream.ComputeStringSize(17, this.Ticket);
				}
				if (this.hasPushMailStatus)
				{
					num += CodedOutputStream.ComputeUInt32Size(18, this.PushMailStatus);
				}
				if (this.hasSendCardBitFlag)
				{
					num += CodedOutputStream.ComputeUInt32Size(19, this.SendCardBitFlag);
				}
				if (this.hasPushMailSettingTicket)
				{
					num += CodedOutputStream.ComputeStringSize(20, this.PushMailSettingTicket);
				}
				if (this.hasBuiltinIPList)
				{
					num += CodedOutputStream.ComputeMessageSize(21, this.BuiltinIPList);
				}
				if (this.hasFSURL)
				{
					num += CodedOutputStream.ComputeStringSize(22, this.FSURL);
				}
				if (this.hasNetworkControl)
				{
					num += CodedOutputStream.ComputeMessageSize(23, this.NetworkControl);
				}
				if (this.hasPluginFlag)
				{
					num += CodedOutputStream.ComputeUInt32Size(24, this.PluginFlag);
				}
				if (this.hasAlias)
				{
					num += CodedOutputStream.ComputeStringSize(25, this.Alias);
				}
				if (this.hasRegType)
				{
					num += CodedOutputStream.ComputeUInt32Size(26, this.RegType);
				}
				if (this.hasAuthKey)
				{
					num += CodedOutputStream.ComputeStringSize(27, this.AuthKey);
				}
				if (this.hasSid)
				{
					num += CodedOutputStream.ComputeStringSize(28, this.Sid);
				}
				if (this.hasPluginKeyList)
				{
					num += CodedOutputStream.ComputeMessageSize(29, this.PluginKeyList);
				}
				if (this.hasImgEncryptKey)
				{
					num += CodedOutputStream.ComputeMessageSize(30, this.ImgEncryptKey);
				}
				if (this.hasA2Key)
				{
					num += CodedOutputStream.ComputeMessageSize(31, this.A2Key);
				}
				if (this.hasKSid)
				{
					num += CodedOutputStream.ComputeMessageSize(32, this.KSid);
				}
				if (this.hasProfileFlag)
				{
					num += CodedOutputStream.ComputeUInt32Size(33, this.ProfileFlag);
				}
				if (this.hasPassword)
				{
					num += CodedOutputStream.ComputeStringSize(34, this.Password);
				}
				if (this.hasTimeStamp)
				{
					num += CodedOutputStream.ComputeUInt32Size(35, this.TimeStamp);
				}
				if (this.hasIsAutoReg)
				{
					num += CodedOutputStream.ComputeUInt32Size(36, this.IsAutoReg);
				}
				this.memoizedSerializedSize = num;
				return num;
			}
		}
		private AuthResponse()
		{
		}
		public override void WriteTo(ICodedOutputStream output)
		{
			int arg_06_0 = this.SerializedSize;
			string[] authResponseFieldNames = AuthResponse._authResponseFieldNames;
			if (this.hasBaseResponse)
			{
				output.WriteMessage(1, authResponseFieldNames[3], this.BaseResponse);
			}
			if (this.hasUin)
			{
				output.WriteUInt32(2, authResponseFieldNames[34], this.Uin);
			}
			if (this.hasUserName)
			{
				output.WriteMessage(3, authResponseFieldNames[35], this.UserName);
			}
			if (this.hasNickName)
			{
				output.WriteMessage(4, authResponseFieldNames[16], this.NickName);
			}
			if (this.hasBindUin)
			{
				output.WriteUInt32(5, authResponseFieldNames[6], this.BindUin);
			}
			if (this.hasBindEmail)
			{
				output.WriteMessage(6, authResponseFieldNames[4], this.BindEmail);
			}
			if (this.hasBindMobile)
			{
				output.WriteMessage(7, authResponseFieldNames[5], this.BindMobile);
			}
			if (this.hasStatus)
			{
				output.WriteUInt32(8, authResponseFieldNames[31], this.Status);
			}
			if (this.hasSessionKey)
			{
				output.WriteBytes(9, authResponseFieldNames[29], this.SessionKey);
			}
			if (this.hasImgSid)
			{
				output.WriteMessage(10, authResponseFieldNames[11], this.ImgSid);
			}
			if (this.hasImgBuf)
			{
				output.WriteMessage(11, authResponseFieldNames[9], this.ImgBuf);
			}
			if (this.hasOfficialUserName)
			{
				output.WriteMessage(12, authResponseFieldNames[18], this.OfficialUserName);
			}
			if (this.hasOfficialNickName)
			{
				output.WriteMessage(13, authResponseFieldNames[17], this.OfficialNickName);
			}
			if (this.hasQQMicroBlogUserName)
			{
				output.WriteMessage(14, authResponseFieldNames[26], this.QQMicroBlogUserName);
			}
			if (this.hasQQMicroBlogStatus)
			{
				output.WriteUInt32(15, authResponseFieldNames[25], this.QQMicroBlogStatus);
			}
			if (this.hasNewVersion)
			{
				output.WriteUInt32(16, authResponseFieldNames[15], this.NewVersion);
			}
			if (this.hasTicket)
			{
				output.WriteString(17, authResponseFieldNames[32], this.Ticket);
			}
			if (this.hasPushMailStatus)
			{
				output.WriteUInt32(18, authResponseFieldNames[24], this.PushMailStatus);
			}
			if (this.hasSendCardBitFlag)
			{
				output.WriteUInt32(19, authResponseFieldNames[28], this.SendCardBitFlag);
			}
			if (this.hasPushMailSettingTicket)
			{
				output.WriteString(20, authResponseFieldNames[23], this.PushMailSettingTicket);
			}
			if (this.hasBuiltinIPList)
			{
				output.WriteMessage(21, authResponseFieldNames[7], this.BuiltinIPList);
			}
			if (this.hasFSURL)
			{
				output.WriteString(22, authResponseFieldNames[8], this.FSURL);
			}
			if (this.hasNetworkControl)
			{
				output.WriteMessage(23, authResponseFieldNames[14], this.NetworkControl);
			}
			if (this.hasPluginFlag)
			{
				output.WriteUInt32(24, authResponseFieldNames[20], this.PluginFlag);
			}
			if (this.hasAlias)
			{
				output.WriteString(25, authResponseFieldNames[1], this.Alias);
			}
			if (this.hasRegType)
			{
				output.WriteUInt32(26, authResponseFieldNames[27], this.RegType);
			}
			if (this.hasAuthKey)
			{
				output.WriteString(27, authResponseFieldNames[2], this.AuthKey);
			}
			if (this.hasSid)
			{
				output.WriteString(28, authResponseFieldNames[30], this.Sid);
			}
			if (this.hasPluginKeyList)
			{
				output.WriteMessage(29, authResponseFieldNames[21], this.PluginKeyList);
			}
			if (this.hasImgEncryptKey)
			{
				output.WriteMessage(30, authResponseFieldNames[10], this.ImgEncryptKey);
			}
			if (this.hasA2Key)
			{
				output.WriteMessage(31, authResponseFieldNames[0], this.A2Key);
			}
			if (this.hasKSid)
			{
				output.WriteMessage(32, authResponseFieldNames[13], this.KSid);
			}
			if (this.hasProfileFlag)
			{
				output.WriteUInt32(33, authResponseFieldNames[22], this.ProfileFlag);
			}
			if (this.hasPassword)
			{
				output.WriteString(34, authResponseFieldNames[19], this.Password);
			}
			if (this.hasTimeStamp)
			{
				output.WriteUInt32(35, authResponseFieldNames[33], this.TimeStamp);
			}
			if (this.hasIsAutoReg)
			{
				output.WriteUInt32(36, authResponseFieldNames[12], this.IsAutoReg);
			}
		}
		public override int GetHashCode()
		{
			int num = base.GetType().GetHashCode();
			if (this.hasBaseResponse)
			{
				num ^= this.baseResponse_.GetHashCode();
			}
			if (this.hasUin)
			{
				num ^= this.uin_.GetHashCode();
			}
			if (this.hasUserName)
			{
				num ^= this.userName_.GetHashCode();
			}
			if (this.hasNickName)
			{
				num ^= this.nickName_.GetHashCode();
			}
			if (this.hasBindUin)
			{
				num ^= this.bindUin_.GetHashCode();
			}
			if (this.hasBindEmail)
			{
				num ^= this.bindEmail_.GetHashCode();
			}
			if (this.hasBindMobile)
			{
				num ^= this.bindMobile_.GetHashCode();
			}
			if (this.hasStatus)
			{
				num ^= this.status_.GetHashCode();
			}
			if (this.hasSessionKey)
			{
				num ^= this.sessionKey_.GetHashCode();
			}
			if (this.hasImgSid)
			{
				num ^= this.imgSid_.GetHashCode();
			}
			if (this.hasImgBuf)
			{
				num ^= this.imgBuf_.GetHashCode();
			}
			if (this.hasOfficialUserName)
			{
				num ^= this.officialUserName_.GetHashCode();
			}
			if (this.hasOfficialNickName)
			{
				num ^= this.officialNickName_.GetHashCode();
			}
			if (this.hasQQMicroBlogUserName)
			{
				num ^= this.qQMicroBlogUserName_.GetHashCode();
			}
			if (this.hasQQMicroBlogStatus)
			{
				num ^= this.qQMicroBlogStatus_.GetHashCode();
			}
			if (this.hasNewVersion)
			{
				num ^= this.newVersion_.GetHashCode();
			}
			if (this.hasTicket)
			{
				num ^= this.ticket_.GetHashCode();
			}
			if (this.hasPushMailStatus)
			{
				num ^= this.pushMailStatus_.GetHashCode();
			}
			if (this.hasSendCardBitFlag)
			{
				num ^= this.sendCardBitFlag_.GetHashCode();
			}
			if (this.hasPushMailSettingTicket)
			{
				num ^= this.pushMailSettingTicket_.GetHashCode();
			}
			if (this.hasBuiltinIPList)
			{
				num ^= this.builtinIPList_.GetHashCode();
			}
			if (this.hasFSURL)
			{
				num ^= this.fSURL_.GetHashCode();
			}
			if (this.hasNetworkControl)
			{
				num ^= this.networkControl_.GetHashCode();
			}
			if (this.hasPluginFlag)
			{
				num ^= this.pluginFlag_.GetHashCode();
			}
			if (this.hasAlias)
			{
				num ^= this.alias_.GetHashCode();
			}
			if (this.hasRegType)
			{
				num ^= this.regType_.GetHashCode();
			}
			if (this.hasAuthKey)
			{
				num ^= this.authKey_.GetHashCode();
			}
			if (this.hasSid)
			{
				num ^= this.sid_.GetHashCode();
			}
			if (this.hasPluginKeyList)
			{
				num ^= this.pluginKeyList_.GetHashCode();
			}
			if (this.hasImgEncryptKey)
			{
				num ^= this.imgEncryptKey_.GetHashCode();
			}
			if (this.hasA2Key)
			{
				num ^= this.a2Key_.GetHashCode();
			}
			if (this.hasKSid)
			{
				num ^= this.kSid_.GetHashCode();
			}
			if (this.hasProfileFlag)
			{
				num ^= this.profileFlag_.GetHashCode();
			}
			if (this.hasPassword)
			{
				num ^= this.password_.GetHashCode();
			}
			if (this.hasTimeStamp)
			{
				num ^= this.timeStamp_.GetHashCode();
			}
			if (this.hasIsAutoReg)
			{
				num ^= this.isAutoReg_.GetHashCode();
			}
			return num;
		}
		public override bool Equals(object value)
		{
			AuthResponse authResponse = value as AuthResponse;
			return authResponse != null && (this.hasBaseResponse == authResponse.hasBaseResponse && (!this.hasBaseResponse || this.baseResponse_.Equals(authResponse.baseResponse_))) && (this.hasUin == authResponse.hasUin && (!this.hasUin || this.uin_.Equals(authResponse.uin_))) && (this.hasUserName == authResponse.hasUserName && (!this.hasUserName || this.userName_.Equals(authResponse.userName_))) && (this.hasNickName == authResponse.hasNickName && (!this.hasNickName || this.nickName_.Equals(authResponse.nickName_))) && (this.hasBindUin == authResponse.hasBindUin && (!this.hasBindUin || this.bindUin_.Equals(authResponse.bindUin_))) && (this.hasBindEmail == authResponse.hasBindEmail && (!this.hasBindEmail || this.bindEmail_.Equals(authResponse.bindEmail_))) && (this.hasBindMobile == authResponse.hasBindMobile && (!this.hasBindMobile || this.bindMobile_.Equals(authResponse.bindMobile_))) && (this.hasStatus == authResponse.hasStatus && (!this.hasStatus || this.status_.Equals(authResponse.status_))) && (this.hasSessionKey == authResponse.hasSessionKey && (!this.hasSessionKey || this.sessionKey_.Equals(authResponse.sessionKey_))) && (this.hasImgSid == authResponse.hasImgSid && (!this.hasImgSid || this.imgSid_.Equals(authResponse.imgSid_))) && (this.hasImgBuf == authResponse.hasImgBuf && (!this.hasImgBuf || this.imgBuf_.Equals(authResponse.imgBuf_))) && (this.hasOfficialUserName == authResponse.hasOfficialUserName && (!this.hasOfficialUserName || this.officialUserName_.Equals(authResponse.officialUserName_))) && (this.hasOfficialNickName == authResponse.hasOfficialNickName && (!this.hasOfficialNickName || this.officialNickName_.Equals(authResponse.officialNickName_))) && (this.hasQQMicroBlogUserName == authResponse.hasQQMicroBlogUserName && (!this.hasQQMicroBlogUserName || this.qQMicroBlogUserName_.Equals(authResponse.qQMicroBlogUserName_))) && (this.hasQQMicroBlogStatus == authResponse.hasQQMicroBlogStatus && (!this.hasQQMicroBlogStatus || this.qQMicroBlogStatus_.Equals(authResponse.qQMicroBlogStatus_))) && (this.hasNewVersion == authResponse.hasNewVersion && (!this.hasNewVersion || this.newVersion_.Equals(authResponse.newVersion_))) && (this.hasTicket == authResponse.hasTicket && (!this.hasTicket || this.ticket_.Equals(authResponse.ticket_))) && (this.hasPushMailStatus == authResponse.hasPushMailStatus && (!this.hasPushMailStatus || this.pushMailStatus_.Equals(authResponse.pushMailStatus_))) && (this.hasSendCardBitFlag == authResponse.hasSendCardBitFlag && (!this.hasSendCardBitFlag || this.sendCardBitFlag_.Equals(authResponse.sendCardBitFlag_))) && (this.hasPushMailSettingTicket == authResponse.hasPushMailSettingTicket && (!this.hasPushMailSettingTicket || this.pushMailSettingTicket_.Equals(authResponse.pushMailSettingTicket_))) && (this.hasBuiltinIPList == authResponse.hasBuiltinIPList && (!this.hasBuiltinIPList || this.builtinIPList_.Equals(authResponse.builtinIPList_))) && (this.hasFSURL == authResponse.hasFSURL && (!this.hasFSURL || this.fSURL_.Equals(authResponse.fSURL_))) && (this.hasNetworkControl == authResponse.hasNetworkControl && (!this.hasNetworkControl || this.networkControl_.Equals(authResponse.networkControl_))) && (this.hasPluginFlag == authResponse.hasPluginFlag && (!this.hasPluginFlag || this.pluginFlag_.Equals(authResponse.pluginFlag_))) && (this.hasAlias == authResponse.hasAlias && (!this.hasAlias || this.alias_.Equals(authResponse.alias_))) && (this.hasRegType == authResponse.hasRegType && (!this.hasRegType || this.regType_.Equals(authResponse.regType_))) && (this.hasAuthKey == authResponse.hasAuthKey && (!this.hasAuthKey || this.authKey_.Equals(authResponse.authKey_))) && (this.hasSid == authResponse.hasSid && (!this.hasSid || this.sid_.Equals(authResponse.sid_))) && (this.hasPluginKeyList == authResponse.hasPluginKeyList && (!this.hasPluginKeyList || this.pluginKeyList_.Equals(authResponse.pluginKeyList_))) && (this.hasImgEncryptKey == authResponse.hasImgEncryptKey && (!this.hasImgEncryptKey || this.imgEncryptKey_.Equals(authResponse.imgEncryptKey_))) && (this.hasA2Key == authResponse.hasA2Key && (!this.hasA2Key || this.a2Key_.Equals(authResponse.a2Key_))) && (this.hasKSid == authResponse.hasKSid && (!this.hasKSid || this.kSid_.Equals(authResponse.kSid_))) && (this.hasProfileFlag == authResponse.hasProfileFlag && (!this.hasProfileFlag || this.profileFlag_.Equals(authResponse.profileFlag_))) && (this.hasPassword == authResponse.hasPassword && (!this.hasPassword || this.password_.Equals(authResponse.password_))) && (this.hasTimeStamp == authResponse.hasTimeStamp && (!this.hasTimeStamp || this.timeStamp_.Equals(authResponse.timeStamp_))) && (this.hasIsAutoReg == authResponse.hasIsAutoReg && (!this.hasIsAutoReg || this.isAutoReg_.Equals(authResponse.isAutoReg_)));
		}
		public override void PrintTo(TextWriter writer)
		{
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("BaseResponse", this.hasBaseResponse, this.baseResponse_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("Uin", this.hasUin, this.uin_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("UserName", this.hasUserName, this.userName_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("NickName", this.hasNickName, this.nickName_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("BindUin", this.hasBindUin, this.bindUin_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("BindEmail", this.hasBindEmail, this.bindEmail_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("BindMobile", this.hasBindMobile, this.bindMobile_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("Status", this.hasStatus, this.status_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("SessionKey", this.hasSessionKey, this.sessionKey_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("ImgSid", this.hasImgSid, this.imgSid_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("ImgBuf", this.hasImgBuf, this.imgBuf_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("OfficialUserName", this.hasOfficialUserName, this.officialUserName_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("OfficialNickName", this.hasOfficialNickName, this.officialNickName_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("QQMicroBlogUserName", this.hasQQMicroBlogUserName, this.qQMicroBlogUserName_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("QQMicroBlogStatus", this.hasQQMicroBlogStatus, this.qQMicroBlogStatus_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("NewVersion", this.hasNewVersion, this.newVersion_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("Ticket", this.hasTicket, this.ticket_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("PushMailStatus", this.hasPushMailStatus, this.pushMailStatus_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("SendCardBitFlag", this.hasSendCardBitFlag, this.sendCardBitFlag_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("PushMailSettingTicket", this.hasPushMailSettingTicket, this.pushMailSettingTicket_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("BuiltinIPList", this.hasBuiltinIPList, this.builtinIPList_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("FSURL", this.hasFSURL, this.fSURL_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("NetworkControl", this.hasNetworkControl, this.networkControl_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("PluginFlag", this.hasPluginFlag, this.pluginFlag_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("Alias", this.hasAlias, this.alias_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("RegType", this.hasRegType, this.regType_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("AuthKey", this.hasAuthKey, this.authKey_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("Sid", this.hasSid, this.sid_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("PluginKeyList", this.hasPluginKeyList, this.pluginKeyList_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("ImgEncryptKey", this.hasImgEncryptKey, this.imgEncryptKey_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("A2Key", this.hasA2Key, this.a2Key_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("KSid", this.hasKSid, this.kSid_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("ProfileFlag", this.hasProfileFlag, this.profileFlag_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("Password", this.hasPassword, this.password_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("TimeStamp", this.hasTimeStamp, this.timeStamp_, writer);
			GeneratedMessageLite<AuthResponse, AuthResponse.Builder>.PrintField("IsAutoReg", this.hasIsAutoReg, this.isAutoReg_, writer);
		}
		public static AuthResponse ParseFrom(byte[] data)
		{
			return AuthResponse.CreateBuilder().MergeFrom(data).BuildParsed();
		}
		private AuthResponse MakeReadOnly()
		{
			return this;
		}
		public static AuthResponse.Builder CreateBuilder()
		{
			return new AuthResponse.Builder();
		}
		public override AuthResponse.Builder ToBuilder()
		{
			return AuthResponse.CreateBuilder(this);
		}
		public override AuthResponse.Builder CreateBuilderForType()
		{
			return new AuthResponse.Builder();
		}
		public static AuthResponse.Builder CreateBuilder(AuthResponse prototype)
		{
			return new AuthResponse.Builder(prototype);
		}
		static AuthResponse()
		{
			AuthResponse.defaultInstance = new AuthResponse().MakeReadOnly();
			AuthResponse._authResponseFieldNames = new string[]
			{
				"A2Key",
				"Alias",
				"AuthKey",
				"BaseResponse",
				"BindEmail",
				"BindMobile",
				"BindUin",
				"BuiltinIPList",
				"FSURL",
				"ImgBuf",
				"ImgEncryptKey",
				"ImgSid",
				"IsAutoReg",
				"KSid",
				"NetworkControl",
				"NewVersion",
				"NickName",
				"OfficialNickName",
				"OfficialUserName",
				"Password",
				"PluginFlag",
				"PluginKeyList",
				"ProfileFlag",
				"PushMailSettingTicket",
				"PushMailStatus",
				"QQMicroBlogStatus",
				"QQMicroBlogUserName",
				"RegType",
				"SendCardBitFlag",
				"SessionKey",
				"Sid",
				"Status",
				"Ticket",
				"TimeStamp",
				"Uin",
				"UserName"
			};
			AuthResponse._authResponseFieldTags = new uint[]
			{
				250u,
				202u,
				218u,
				10u,
				50u,
				58u,
				40u,
				170u,
				178u,
				90u,
				242u,
				82u,
				288u,
				258u,
				186u,
				128u,
				34u,
				106u,
				98u,
				274u,
				192u,
				234u,
				264u,
				162u,
				144u,
				120u,
				114u,
				208u,
				152u,
				74u,
				226u,
				64u,
				138u,
				280u,
				16u,
				26u
			};
			object.ReferenceEquals(micromsg.Proto.AuthResponse.Descriptor, null);
		}
	}
}
